#include <stdio.h>
#include <conio.h>

struct obj	{
	unsigned long params[10];
	void (*fn)(struct obj *);
	char desc[256];
	struct obj *abst_link;
	struct obj *exec_link;
};

void con(struct obj *x)
{
	if(x->params[0]==0)
		printf("%c",x->params[1]);
	else
		x->params[1]=getch();
}

struct obj conio={fn=con,desc="conio 0/1,char",abst_link=0,exec_link=0};

void display_obj(struct obj *x)
{
	struct obj *t;
	printf("\nObject description:%s",x->desc);
	printf("\nAbst link:")
	if(!x->abst_link)
		printf("<null>");
	else
		printf("%s",x->desc);
	if(!x->exec_link)
		printf("<null>");
	else
		printf("%s",x->desc);
}

void main()
{
	display_obj(&conio);
	getch();
}